﻿using System.Security.Cryptography;
using System.Text;

namespace Enter.Admin.Utils
{
    public class Crypto
    {
        public static string Md5(string str) 
        {
            if(string.IsNullOrWhiteSpace(str)) return string.Empty;
            var sb = new StringBuilder();
            MD5 md5 = MD5.Create();
            byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(str));
            // 通过使用循环，将字节类型的数组转换为字符串，此字符串是常规字符格式化所得
            for (int i = 0; i < s.Length; i++)
            {
                // 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母，如果使用大写（X）则格式后的字符是大写字符
                sb.Append(s[i].ToString("X"));
            }
            return sb.ToString();
        }
    }
}
